Skip to content

Add oma-preview: native PDF reader/editor with visible agent review - #305

Open
derluke wants to merge 5 commits into
omacom:masterfrom
derluke:codex/add-oma-preview
Open

Add oma-preview: native PDF reader/editor with visible agent review#305
derluke wants to merge 5 commits into
omacom:masterfrom
derluke:codex/add-oma-preview

Conversation

@derluke

@derluke derluke commented Sep 4, 2026

Copy link
Copy Markdown

Summary

Add oma-preview 0.10.0, a Rust/Quickshell PDF reader and editor built for Omarchy. I maintain the upstream project.

Continuous reading, highlighted search, bookmarks, text overlays on non-fillable PDFs, reusable handwritten signatures and page assembly. Private drafts preserve edits and up to 100 undo/redo changes across reopening. The JSON CLI lets agents propose visible changes in the running window; users can correct them before exporting a separate PDF.

0.10.0 adds edge-revealed controls and scrollbars, sharper scrolling, retained-frame single-page reading, faster mouse-wheel page turns, Ctrl+wheel zoom, and confirmed draft clearing. Restored-draft notices stay below the drawer and dismiss automatically. Existing mouse-wheel precision and trackpad momentum remain covered by regression tests.

Packaging

  • Local-source PKGBUILD, pinned v0.10.0 tag and SHA-256; no AUR account required.
  • Normal edge-first policy, no fast-ring override or automatic upstream sync.
  • Installs the binary, QML UI, native hold-gesture module, desktop file, icon, license and optional agent skill under /usr.
  • Qt 6.11+ runtime; CMake, pkgconf and wayland-protocols build dependencies.
  • Native hold gestures use Qt’s existing Wayland connection; no raw device permissions or compositor configuration changes.
  • Does not change default applications or write into home directories. Existing Folio private-storage paths are retained for compatibility.

Validation

  • x86-64 makepkg build from the published tag, including source checksum verification and 13 Rust/CLI tests.
  • Local isolated UI checks cover native wheel/trackpad input, search, draft clearing and failure recovery, annotations, reader lifecycle, page identity, controls and a 2,048-page synthetic fixture.
  • Retained-frame checks on a 12-slide presentation captured no blank transition frames at 1× or 2×; the source remained unchanged.
  • All 29 isolated UI checks pass against the extracted x86-64 release package.
  • Clean Arch build and full suite passed.
  • Fresh installation of the public package passed, including installed-file integrity/version and all 29 installed-UI regressions.
  • Release checks and methodology.
  • ARM64 source builds are declared but remain untested; maintainer build validation is needed. Automated captures are not physical-input or low-end-hardware benchmarks.

This does not request changing the default PDF app. I can maintain package updates through follow-up PRs.

Screenshots and demo

Freshly captured from the actual 0.10.0 app: reading, edge controls, Find, bookmarking, typing, resizing, correction, undo, three palettes, export and clearing a draft.

Oma Preview 0.10.0 in use

Full-resolution 32-second MP4 · Try the sample PDF · Release and package

Fictional content, scripted in-window actions, edited timing and an illustrated pointer. Captured in an isolated offscreen instance without desktop input or desktop theme changes.

Reading, editing and themes

Reading in Tokyo Night

Edge-revealed controls

Text selection and contextual controls

The same edited document in Catppuccin Latte

The same edited document in Gruvbox

@Chessing234 Chessing234 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

source build from tagged release, ui path fix in prepare(), cargo test in check().

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants